//
//  HMTabBarItem.swift
//  01-SinaWeibo
//
//  Created by 周英培 on 16/5/27.
//  Copyright © 2016年 周英培. All rights reserved.
//

import UIKit

class HMTabBarItem: UITabBarItem {

    //重写属性 在此方法里面封装重写底部按钮右上方的小图标
    override var badgeValue: String? {
    
        didSet {
        
            //获取控制器 控制器在_target这个属性里面，现在同样通过KVC的key值来获取value 即通过_target 来获取控制器
            let target = valueForKey("_target") as! HMMainViewController
            
            
            for subview in target.tabBar.subviews {
                if subview.isKindOfClass(NSClassFromString("UITabBarButton")!) {
                    for v in subview.subviews {
                        if v.isKindOfClass(NSClassFromString("_UIBadgeView")!) {
                            for begview in v.subviews {
                                if begview.isKindOfClass(NSClassFromString("_UIBadgeBackground")!) {
                                    print(begview)
                                    let image = UIImage(named: "main_badge")
                                    
                                    //调用 _UIBadgeBackground类型的对象的KVC方法 简介设置值
                                    begview.setValue(image, forKey: "_image")
                                    
                                }
                            }
                        }
                    }
                }
            }
            
        }
            
        }
    
    }
    

